4
4
7
4
4
4
7
4
4
4
4
4
4
4
7
4
4
7
4
7
7
4
4
4
4
4
4
4
7
4
4
4
7
4
3
7
4
4
4
4
4
7
4
4
7
4
7
4
4
4
4
4
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
4
4
7
4
4
4
7
4
7
4
4
4
7
4
4
7
4
4
4
4
0
4
4
4
7
7
4
4
7
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
4
4
4
4
5
7
7
4
7
4
4
7
7
4
4
7
4
7
4
7
4
4
7
4
4
4
4
4
4
4
7
4
4
4
3
7
4
4
4
4
4
3
7
7
4
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
4
4
4
4
4
3
4
4
4
3
4
4
7
4
4
4
4
4
4
4
4
7
4
7
4
4
7
7
4
4
4
4
7
7
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
7
4
4
4
4
4
4
4
4
4
4
4
4
4
4
7
7
4
4
4
4
4
4
4
4
4
7
4
4
4
7
4
4
7
4
4
4
4
4
4
4
4
7
4
4
4
4
7
4
7
4
4
4
4
4
4
7
4
7
4
4
4
4
7
7
4
4
4
4
4
7
4
4
4
7
4
4
4
4
4
7
4
4
4
4
3
3
3
2
5
4
4
4
4
2
4
1
1
1
3
1
3
3
1
1
3
0
1
3
3
1
1
3
1
1
1
1
1
1
1
0
1
0
0
7
1
7
0
1
0
0
0
7
1
0
1
1
1
1
0
1
0
1
0
0
0
0
1
0
0
0
0
0
1
1
0
1
0
1
1
1
7
1
1
1
1
1
1
1
0
0
1
1
0
0
0
0
1
7
7
1
7
0
0
0
1
7
1
1
0
0
1
1
0
1
0
0
1
1
1
1
0
7
0
1
0
0
1
1
1
1
1
1
2
0
7
0
1
0
0
0
0
0
1
1
0
0
0
1
0
1
7
1
1
1
1
1
1
1
7
0
1
1
1
1
1
0
0
1
0
0
0
0
7
0
1
0
0
1
1
1
0
0
0
1
1
7
1
7
0
0
0
0
0
1
1
7
0
0
0
7
0
0
1
0
7
0
1
1
1
1
0
0
1
0
1
0
0
0
0
0
0
0
1
1
1
0
0
6
0
0
0
1
1
0
0
1
1
1
0
7
0
1
1
0
1
1
1
0
1
0
1
1
0
7
0
1
1
1
0
0
7
0
1
1
1
0
0
0
0
1
0
1
0
1
0
0
1
0
0
7
7
1
0
1
1
1
0
0
0
1
1
0
0
0
1
0
1
1
0
0
1
1
0
0
1
0
0
0
1
1
1
1
1
0
0
0
0
0
1
7
0
1
0
0
0
1
0
0
7
0
1
1
1
0
1
0
0
0
0
7
0
0
1
0
0
0
1
0
0
0
0
0
1
0
1
1
0
1
7
1
7
0
0
1
0
1
0
1
1
1
1
1
0
1
7
1
1
1
1
1
0
0
0
1
0
0
1
1
1
1
1
1
0
0
7
0
7
0
0
1
1
1
1
1
0
1
1
0
0
0
1
0
1
0
0
1
0
1
0
1
0
1
0
1
1
0
1
0
1
0
0
0
0
0
1
0
1
1
1
1
1
1
1
0
0
1
1
0
1
0
1
1
1
1
0
1
7
1
1
0
1
7
1
0
1
0
1
0
0
0
0
0
0
0
1
7
0
0
0
7
1
0
0
0
1
7
0
1
0
1
1
1
1
0
0
7
1
1
1
7
1
0
0
0
1
7
1
0
1
0
7
0
0
1
1
1
1
0
0
0
7
1
0
1
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
0
7
1
0
1
0
1
0
0
0
1
1
1
1
0
1
1
0
0
0
1
1
7
1
1
1
1
1
1
0
1
0
0
1
7
0
1
0
0
0
0
1
7
0
1
0
1
0
0
1
7
1
1
1
0
0
0
1
0
0
1
0
1
5
0
0
7
1
0
0
1
1
1
1
0
0
1
1
0
1
1
0
0
0
0
1
0
1
1
0
1
7
0
1
1
1
0
7
1
0
1
1
1
0
1
1
1
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
7
2
0
1
0
0
0
0
1
0
1
0
1
7
0
7
1
1
0
0
0
0
0
0
0
0
0
0
0
7
0
0
1
1
0
7
1
0
0
0
1
1
1
1
5
1
0
0
0
1
1
0
0
0
1
0
0
0
1
1
7
0
1
1
0
0
1
0
7
1
0
0
0
1
7
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
1
1
1
1
0
1
1
1
1
0
1
0
1
7
2
0
0
1
1
1
7
1
1
0
0
0
1
1
0
1
1
0
1
1
0
0
7
0
0
1
0
0
0
1
1
1
0
0
0
1
0
1
1
1
1
0
0
1
0
0
0
1
1
1
0
1
1
1
0
0
1
0
0
0
1
1
0
1
0
7
1
0
1
0
7
0
1
1
0
5
0
1
0
0
0
0
1
0
1
1
1
0
1
1
7
0
0
0
0
1
1
1
0
1
1
1
1
0
7
1
1
0
1
0
0
0
1
1
0
0
1
1
0
1
1
1
0
1
1
0
0
1
0
0
1
0
0
1
3
1
0
0
1
0
1
7
1
1
7
7
0
1
0
0
0
1
0
0
0
7
0
0
1
7
0
0
0
0
1
1
0
0
0
1
0
1
1
0
0
1
0
1
0
0
0
1
0
0
0
1
1
1
1
0
0
0
0
0
7
0
0
1
1
0
0
1
0
0
1
1
0
1
0
0
1
0
1
0
1
0
1
0
0
1
0
0
0
0
0
0
1
1
1
1
1
0
1
1
0
1
0
7
1
1
0
1
1
0
1
0
7
0
0
7
1
1
7
7
1
0
1
0
1
0
1
1
0
1
1
0
0
1
0
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
3
1
3
3
3
3
3
3
3
1
1
3
3
3
3
3
1
3
3
3
1
1
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
3
3
1
3
3
3
3
1
3
3
3
3
1
3
3
1
3
3
3
3
3
3
3
3
1
3
3
3
3
3
3
3
3
1
3
3
3
3
3
3
3
3
3
3
3
1
3
1
3
3
3
3
3
3
3
3
1
3
3
3
3
3
1
3
3
3
3
3
1
1
3
3
3
3
3
3
3
1
3
3
3
3
3
3
3
3
3
1
3
3
3
1
3
3
3
3
3
3
1
1
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
1
3
3
3
3
3
1
3
3
3
3
3
3
3
3
3
3
1
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
3
3
7
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
3
3
3
3
3
3
3
3
3
3
3
1
3
3
3
3
3
7
3
3
3
3
3
3
3
1
3
1
3
3
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
7
7
7
7
6
7
7
6
7
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
5
5
5
5
5
5
5
5
4
5
5
5
5
5
5
5
5
5
5
5
5
4
5
5
5
5
5
5
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
5
5
5
5
5
5
5
5
2
2
2
2
2
2
2
2
2
2
2
2
3
3
2
3
2
2
3
7
2
2
3
2
2
3
3
3
3
2
3
2
2
2
2
2
3
2
2
2
3
3
2
2
3
7
2
2
7
7
3
3
2
2
3
2
2
2
2
2
2
3
2
2
2
2
2
2
3
2
2
3
2
3
2
2
2
7
2
3
2
3
2
3
2
3
3
2
2
3
3
2
2
3
3
3
3
2
3
3
2
3
2
3
7
2
3
2
7
2
3
2
2
3
2
2
2
2
3
2
2
2
3
2
2
3
2
2
2
2
3
2
2
2
3
2
3
2
2
2
2
2
3
3
2
3
3
2
2
3
2
2
2
2
2
3
2
2
2
3
2
2
2
2
2
2
7
3
7
3
3
2
2
2
2
2
2
2
2
2
2
3
3
3
2
3
2
2
2
7
2
2
2
3
2
3
2
3
3
2
2
2
3
3
3
2
2
3
2
7
3
2
2
3
2
3
3
7
3
3
7
2
2
3
3
2
3
2
2
2
2
3
3
3
3
3
3
3
3
3
2
3
3
3
2
3
3
2
2
2
3
3
2
3
3
3
2
3
2
2
2
2
2
2
2
3
2
3
3
3
3
2
3
2
2
2
3
3
7
2
3
2
2
7
3
3
3
2
3
3
3
2
7
2
3
2
3
3
2
3
7
2
2
3
3
3
3
2
2
2
2
3
3
2
2
2
2
3
2
3
2
2
7
2
3
2
2
3
2
2
2
2
2
3
3
2
3
3
2
2
3
3
2
2
3
2
3
2
2
2
3
2
3
2
3
3
2
3
2
2
2
2
3
2
3
2
3
2
3
2
2
2
3
3
2
2
2
2
2
2
2
3
2
2
2
2
3
3
2
2
2
3
3
2
2
2
2
3
2
3
2
2
3
3
3
2
2
2
3
2
2
2
3
2
2
2
2
3
2
2
3
2
3
2
2
2
3
2
2
2
2
2
3
3
2
2
2
2
3
3
2
3
2
2
3
3
2
2
2
2
2
3
2
2
2
3
2
2
2
2
3
2
2
2
3
3
2
2
2
2
2
3
2
2
2
2
2
2
2
3
2
2
2
2
2
2
2
3
2
3
2
2
2
2
2
3
2
2
2
2
2
2
2
2
2
3
2
2
2
2
2
2
3
7
2
2
2
3
3
3
3
2
3
3
3
2
2
3
3
2
2
2
2
3
2
2
2
2
3
2
2
2
2
2
2
3
2
2
2
2
2
2
2
2
3
2
2
2
2
2
2
2
2
2
2
2
2
7
3
2
3
2
2
2
2
3
3
2
2
2
2
3
3
2
3
2
2
2
2
7
2
7
2
2
7
3
2
3
7
2
2
2
2
3
7
2
2
2
2
2
3
2
2
2
2
2
3
2
2
2
2
2
2
2
2
3
2
2
2
2
2
2
2
2
2
2
2
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
7
2
3
3
3
7
3
2
3
2
3
2
2
2
2
3
3
2
2
2
2
2
2
2
3
3
2
2
3
2
2
2
2
7
7
2
3
2
3
2
3
2
7
3
2
3
3
5
5
5
5
5
5
5
5
4
4
5
5
5
5
5
4
5
5
4
5
5
5
5
5
5
5
4
4
4
5
4
5
5
5
4
5
5
5
5
5
4
4
5
5
4
5
5
5
4
5
5
5
5
4
5
5
5
4
4
4
4
5
5
4
5
5
4
5
4
5
5
4
5
5
5
5
5
5
5
5
5
4
4
4
5
5
5
5
4
4
5
5
5
4
4
5
4
4
4
4
5
5
5
5
4
4
5
4
4
4
5
4
4
5
4
4
5
4
4
5
5
4
4
5
5
5
4
4
5
4
4
5
4
5
4
4
5
4
5
5
4
5
5
4
4
5
5
5
4
4
5
4
5
5
4
4
5
5
4
4
4
4
5
5
5
4
4
4
4
5
4
5
5
4
4
5
4
5
5
5
5
5
5
4
4
5
5
5
5
4
5
5
5
5
4
5
5
4
5
4
4
5
5
5
5
4
4
5
5
5
4
5
5
5
4
5
4
4
5
4
5
4
5
4
5
5
5
5
5
4
5
5
5
4
4
5
5
4
5
4
5
5
4
5
5
5
5
5
4
5
5
4
4
5
5
4
4
5
5
5
5
4
5
5
4
4
5
4
5
5
5
4
4
4
5
5
5
4
4
5
4
5
5
4
4
4
4
5
4
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
5
4
4
5
5
5
5
4
5
4
4
4
4
4
5
5
4
5
5
5
4
5
5
5
4
4
5
5
4
5
4
5
5
4
5
4
4
4
5
5
4
4
4
4
5
5
5
5
5
5
4
5
5
4
4
4
4
5
5
4
5
5
4
5
5
4
5
5
5
4
4
4
4
5
5
4
5
5
5
5
5
5
5
4
4
5
4
5
4
5
5
5
4
5
5
5
4
4
4
5
4
4
5
5
5
4
4
4
5
5
5
4
5
4
4
5
5
5
4
5
4
5
4
5
4
4
5
4
5
4
4
5
5
5
5
5
4
4
5
5
4
5
4
5
5
5
4
5
5
4
5
4
5
5
4
4
5
4
4
4
4
4
4
4
5
5
4
4
4
5
4
4
5
5
5
5
5
5
4
4
4
4
5
4
4
5
5
4
5
4
5
4
4
4
5
5
5
4
4
4
5
4
4
4
5
4
5
4
5
4
5
4
5
5
5
4
4
4
5
5
5
4
4
5
5
5
5
4
5
5
5
5
4
5
5
5
5
4
4
5
5
5
5
6
6
7
6
6
6
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
7
6
7
6
7
6
7
6
6
6
6
7
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
7
6
6
7
6
7
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
7
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
7
6
6
6
6
6
6
6
6
6
6
6
7
6
6
7
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
7
7
6
7
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
7
6
6
6
6
7
6
6
7
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
7
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
7
6
6
6
6
7
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
